; Music of Coliseum (1990) (Black System)
; Ripped by Megachur the 01/01/2009

; Need System Vectors

	write "COLISEUM.BIN"

music_date_rip	equ &0119
music_adr	equ &8afe
first_theme	equ 1
last_theme	equ 1	; 1 -> 1

	read "music_header_v1_0.asm"

.l8b00 equ $ + 2
.l8aff equ $ + 1
.l8afe
	db #09,#00,#02,#02,#01,#01,#03,#03
	db #00,#12,#00,#a3,#01,#54,#03,#00
	db #00,#00,#01,#f6,#02,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#f6
	db #02,#0c,#05,#00,#02,#be,#00,#34
	db #0f,#05,#00,#00,#00,#05,#00,#00
	db #00,#05,#01,#00,#00,#0c,#02,#00
	db #00,#05,#00,#00,#00,#05,#01,#53
	db #03,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#01,#00,#00,#0c,#0d,#00
	db #00,#05,#01,#53,#03,#0c,#05,#00
	db #02,#d5,#00,#34,#0f,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#01,#bc,#03,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#bc
	db #03,#0c,#05,#00,#02,#ef,#00,#34
	db #0f,#05,#00,#00,#00,#05,#00,#00
	db #00,#05,#01,#00,#00,#0c,#02,#00
	db #00,#05,#00,#00,#00,#05,#01,#f4
	db #03,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#01,#00,#00,#0c,#0d,#00
	db #00,#05,#01,#53,#03,#0c,#05,#00
	db #02,#d5,#00,#f2,#0e,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#01,#f6,#02,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#f6
	db #02,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#01,#53,#03,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#53
	db #03,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#01,#bc,#03,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#bc
	db #03,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#01,#f4,#03,#0c,#05,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#0d,#00,#00,#05,#01,#53
	db #03,#0c,#05,#00,#00,#05,#00,#00
	db #00,#05,#00,#00,#00,#05,#01,#00
	db #00,#0c,#02,#00,#00,#05,#00,#00
	db #00,#05,#ff,#01,#f6,#02,#0c,#05
	db #02,#be,#00,#0c,#15,#00,#05,#00
	db #00,#00,#05,#01,#00,#00,#0c,#0d
	db #02,#a9,#00,#0c,#15,#00,#05,#01
	db #f6,#02,#0c,#05,#02,#9f,#00,#0c
	db #15,#00,#05,#00,#02,#7b,#01,#5c
	db #0f,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#01,#53,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#00,#05,#01
	db #53,#03,#0c,#05,#00,#00,#05,#00
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#01,#bc,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#04,#be,#00
	db #0c,#04,#05,#01,#bc,#03,#0c,#05
	db #00,#00,#05,#00,#00,#04,#a9,#00
	db #0c,#04,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#04,#be,#00
	db #0c,#04,#05,#00,#00,#00,#05,#01
	db #f4,#03,#0c,#05,#00,#04,#a9,#00
	db #0c,#04,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#04,#9f,#00
	db #0c,#04,#05,#01,#53,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#00
	db #00,#00,#05,#01,#00,#00,#0c,#02
	db #00,#04,#a9,#00,#0c,#04,#05,#00
	db #00,#00,#05,#01,#f6,#02,#0c,#05
	db #00,#04,#be,#00,#0c,#04,#05,#00
	db #00,#00,#05,#01,#00,#00,#0c,#0d
	db #00,#04,#fd,#00,#8e,#04,#05,#01
	db #f6,#02,#0c,#05,#00,#00,#05,#00
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#01,#53,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#00,#05,#01
	db #53,#03,#0c,#05,#00,#00,#05,#00
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#01,#bc,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#00,#05,#01
	db #bc,#03,#0c,#05,#00,#00,#05,#00
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#01,#f4,#03,#0c,#05
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#0d,#00,#00,#05,#01
	db #53,#03,#0c,#05,#00,#00,#05,#00
	db #00,#00,#05,#00,#00,#00,#05,#01
	db #00,#00,#0c,#02,#00,#00,#05,#00
	db #00,#00,#05,#ff,#01,#f6,#02,#0c
	db #05,#02,#be,#00,#0c,#15,#00,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#02,#a9,#00,#0c,#15,#00,#05
	db #01,#f6,#02,#0c,#05,#02,#9f,#00
	db #0c,#15,#00,#05,#00,#02,#7b,#01
	db #5c,#0f,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #01,#53,#03,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#00,#00,#05,#01,#53,#03,#0c
	db #05,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#01,#bc,#03,#0c
	db #05,#00,#00,#05,#00,#00,#00,#05
	db #01,#00,#00,#0c,#0d,#00,#04,#be
	db #00,#0c,#04,#05,#01,#bc,#03,#0c
	db #05,#00,#00,#05,#00,#00,#04,#a9
	db #00,#0c,#04,#05,#00,#00,#00,#05
	db #00,#00,#04,#be,#00,#0c,#04,#05
	db #00,#00,#00,#05,#01,#f4,#03,#0c
	db #05,#00,#04,#a9,#00,#0c,#04,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#00,#04,#9f,#00,#0c,#04,#05
	db #01,#53,#03,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#04,#a9,#00,#0c,#04,#05
	db #00,#00,#00,#05,#01,#f6,#02,#0c
	db #05,#00,#04,#be,#00,#0c,#04,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#00,#04,#fd,#00,#8e,#04,#05
	db #01,#f6,#02,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #01,#53,#03,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#00,#00,#05,#01,#53,#03,#0c
	db #05,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#01,#bc,#03,#0c
	db #05,#00,#00,#05,#00,#00,#00,#05
	db #01,#00,#00,#0c,#0d,#00,#00,#05
	db #01,#bc,#03,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #01,#f4,#03,#0c,#05,#00,#00,#05
	db #00,#00,#00,#05,#01,#00,#00,#0c
	db #0d,#00,#00,#05,#01,#53,#03,#0c
	db #05,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#00,#00,#00,#05
	db #00,#00,#00,#05,#ff
	;
.init_music	; a = 1
	;
	push af
	call #bca7
	pop af
	cp #00
	ld hl,l9291
	jp z,#bcdd
	ld a,#01
	ld hl,l92a7
	call #bcbc
	ld a,#01
	ld hl,l92b1
	call #bcbf
	ld a,#02
	ld hl,l92b8
	call #bcbc
	ld a,#02
	ld hl,l92bc
	call #bcbf
	ld a,#03
	ld hl,l92c3
	call #bcbc
	ld a,#03
	ld hl,l92ca
	call #bcbf
	ld a,#04
	ld hl,l92d1
	call #bcbc
	ld a,#05
	ld hl,l92de
	call #bcbc
	ld a,#06
	ld hl,l92e2
	call #bcbc
	ld a,#07
	ld hl,l92ec
	call #bcbc
	ld a,#08
	ld hl,l92f3
	call #bcbc
	xor a
	ld (l92a5),a
	ld (l92a6),a
	ld (l919d),a
	ld a,#01
	ld (l92a0),a
	ld hl,l8aff
	ld (l92a3),hl
	call l9125
	ld hl,l9291
	ld bc,#8100
	ld de,l906c
	jp #bcd7
.l906c
	di
	push af
	push de
	push hl
	push bc
	push ix
	push iy
	call l9083
	pop iy
	pop ix
	pop bc
	pop hl
	pop de
	pop af
	ei
	reti
.l9083
	ld a,(l92a0)
	dec a
	cp #00
	jp z,l9090
	ld (l92a0),a
	ret
	;
.play_music
.l9090
	;
	ld b,#03
	ld ix,(l92a1)
.l9096
	push bc
	push ix
	ld de,#0001
	ld a,(ix+#00)
	cp #00
	jp z,l90aa
	call l9101
	ld de,#0005
.l90aa
	pop ix
	pop bc
	add ix,de
	djnz l9096
	ld a,(ix+#00)
	inc a
	ld (l92a0),a
	inc ix
	ld (l92a1),ix
	ld a,(ix+#00)
	cp #ff
	ret nz
	xor a
	ld (l919d),a
	jp l9125
.l90cb
	ld a,#0f
	ld iy,l91c2
	jp l90e6
.l90d4
	ld a,#0f
	ld iy,l91cb
	jp l90e6
.l90dd
	ld a,#0f
	ld iy,l91ef
	jp l90e6
.l90e6
	push af
	push ix
	push iy
	ld (iy+#06),a
	call l916f
	pop iy
	pop ix
	pop af
	dec a
	cp #09
	jp nz,l90e6
	ld (iy+#06),#0f
	ret
.l9101
	ld a,(ix+#04)
	cp #10
	jp z,l90cb
	cp #11
	jp z,l90d4
	cp #13
	jp z,l90dd
	ld iy,l91c2
.l9117
	dec a
	cp #00
	jp z,l916f
	ld de,#0009
	add iy,de
	jp l9117
.l9125
	ld hl,(l92a3)
	inc hl
	ld a,(hl)
	cp #00
	jp nz,l913d
	xor a
	ld (l92a5),a
	ld (l92a6),a
	ld (l919d),a
	ld hl,l8b00
	ld a,(hl)
.l913d
	ld (l92a3),hl
	cp #64
	jp z,l91aa
	cp #65
	jp z,l91b2
	ld ix,(l8afe)
	ld de,l8afe
	add ix,de
.l9153
	dec a
	cp #00
	jp z,l9161
	ld de,#0002
	add ix,de
	jp l9153
.l9161
	ld l,(ix+#00)
	ld h,(ix+#01)
	ld de,l8afe
	add hl,de
	ld (l92a1),hl
	ret
.l916f
	ld a,(ix+#00)
	ld (iy+#00),a
	ld l,(ix+#01)
	ld h,(ix+#02)
	call l91a2
	ld (iy+#03),l
	ld (iy+#04),h
	ld a,(ix+#03)
	ld (iy+#07),a
	ld (iy+#08),#00
	push iy
	pop hl
	ld a,(l92a6)
	cp #00
	jp z,#bcaa
	ld a,(ix+#00)
.l919d equ $ + 1
	cp #00
	jp nz,#bcaa
	ret
.l91a2
	ld a,(l92a5)
	cp #00
	ret z
	add hl,hl
	ret
.l91aa
	ld a,#01
	ld (l92a5),a
	jp l9125
.l91b2
	ld a,#01
	ld (l92a6),a
	inc hl
	ld a,(hl)
	ld (l919d),a
	ld (l92a3),hl
	jp l9125
.l91c2
	db #00,#01,#00,#00,#00,#00,#0f,#00
.l91cb equ $ + 1
	db #00,#00,#02,#00,#00,#00,#05,#0f
	db #00,#00,#00,#03,#00,#00,#00,#00
	db #0f,#00,#00,#00,#04,#00,#00,#00
	db #00,#00,#00,#00,#00,#02,#00,#00
.l91ef equ $ + 5
	db #00,#00,#0f,#00,#00,#00,#02,#00
	db #00,#00,#0f,#0f,#00,#00,#00,#02
	db #00,#00,#00,#19,#0f,#00,#00,#00
	db #05,#00,#00,#00,#05,#0f,#00,#00
	db #00,#05,#00,#00,#00,#0f,#0f,#00
	db #00,#00,#05,#00,#00,#00,#0f,#0f
	db #00,#00,#00,#05,#00,#00,#00,#00
	db #0f,#00,#00,#00,#03,#01,#00,#00
	db #00,#0f,#00,#00,#00,#06,#00,#00
	db #00,#01,#00,#00,#00,#00,#00,#02
	db #00,#00,#00,#0c,#00,#00,#00,#03
	db #02,#00,#00,#00,#0f,#00,#00,#00
	db #00,#00,#00,#00,#00,#00,#00,#00
	db #00,#00,#00,#00,#00,#00,#00,#00
	db #00,#00,#04,#02,#00,#00,#00,#00
	db #00,#00,#00,#00,#00,#00,#00,#00
	db #00,#00,#00,#00,#03,#03,#00,#00
	db #00,#00,#00,#00,#00,#07,#00,#00
	db #00,#00,#00,#00,#00,#00,#08,#00
	db #00,#00,#03,#00,#00,#00,#00,#05
.l9291 equ $ + 7
	db #00,#00,#00,#01,#0f,#00,#00,#00
	db #00,#00,#00,#00,#00,#00,#00,#00
.l92a1 equ $ + 7
.l92a0 equ $ + 6
	db #00,#00,#00,#00,#00,#00,#00,#00
.l92a6 equ $ + 4
.l92a5 equ $ + 3
.l92a3 equ $ + 1
	db #00,#00,#00,#00,#00
.l92a7
	db #03,#01,#00,#0a,#0a,#ff,#01,#01
.l92b1 equ $ + 2
	db #00,#0a,#82,#14,#01,#01,#14,#ff
.l92bc equ $ + 5
.l92b8 equ $ + 1
	db #01,#01,#0f,#ff,#02,#82,#03,#01
.l92c3 equ $ + 4
	db #03,#03,#ff,#03,#02,#0a,#ff,#08
.l92ca equ $ + 3
	db #05,#ff,#04,#03,#50,#01,#01,#14
.l92d1 equ $ + 2
	db #02,#01,#04,#01,#07,#01,#03,#02
.l92de equ $ + 7
	db #01,#01,#00,#02,#0a,#ff,#05,#01
.l92e2 equ $ + 3
	db #0f,#ff,#01,#03,#01,#0a,#01,#01
.l92ec equ $ + 5
	db #00,#04,#05,#fe,#01,#02,#01,#0f
.l92f3 equ $ + 4
	db #05,#0a,#ff,#02,#02,#01,#0c,#01
	db #0c,#ff,#01,#00,#00,#00,#00,#00
	db #00
;
.game_name
	db "Coliseum",0
.game_year
	db "1990",0
.game_publisher
	db "Black System",0
.music_author
	db "",0
.music_comment
	db "",0

	read "music_end_v1_0.asm"
